package com.easyapi.server.service.user;

import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.IService;
import com.easyapi.common.param.user.UserOperationParam;
import com.easyapi.common.param.user.UserPageParam;
import com.easyapi.common.utils.BaseResponse;
import com.easyapi.common.vo.user.ApiCenterUserVo;
import com.easyapi.dao.entity.user.ApiCenterUser;
import org.springframework.transaction.annotation.Transactional;

import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

/**
 * @author javadadi
 */
public interface UserService extends IService<ApiCenterUser> {

    Boolean login(HttpServletResponse response, HttpServletRequest request, String userAccount, String userPassword, String uuid, String code);

   Boolean register(String userAccount, String userPassword, String userPasswordCheck);

    Boolean userOperation(Long userId,String action,Long roleId);

    Boolean loginOut(HttpServletResponse response);

    Page<ApiCenterUserVo> page(UserPageParam param);

    ApiCenterUserVo getUserById(Long id);
}
